import 'package:flutter_deer/generated/json/base/json_field.dart';
import 'package:flutter_deer/generated/json/user_betting_entity.g.dart';

@JsonSerializable()
class UserBettingResultEntity {
  UserBettingResultEntity();
  factory UserBettingResultEntity.fromJson(Map<String, dynamic> json) =>
      $UserBettingResultEntityFromJson(json);

  Map<String, dynamic> toJson() => $UserBettingResultEntityToJson(this);

  double? ratio;
  String? playWay;
  String? bettingTime;
  double? bettingScore;
  String? isGroup;
  String? useScoreType;
  String? bettingStatus;
  String? status;
  double? winScore;
  double? willPrizeAmount;
  String? bettingType;
  List<UserBettingDetailEntity>? details;
}

@JsonSerializable()
class UserBettingDetailEntity {
  UserBettingDetailEntity();
  factory UserBettingDetailEntity.fromJson(Map<String, dynamic> json) =>
      $UserBettingDetailEntityFromJson(json);

  Map<String, dynamic> toJson() => $UserBettingDetailEntityToJson(this);

  String? teamOne;
  String? teamTwo;
  String? teamOneCover;
  String? teamTwoCover;
  String? playDate;
  String? playTime;
  String? gameTitle;
  double? odds;
  String? score;
  String? outcome;
  int? letBallNum;
  String? competitionResult;
  int? teamOneScoreResult;
  int? teamTwoScoreResult;
  double? minBallNum;
  double? maxBallNum;
}

@JsonSerializable()
class UserBettingSearchEntity {
  UserBettingSearchEntity();
  factory UserBettingSearchEntity.fromJson(Map<String, dynamic> json) =>
      $UserBettingSearchEntityFromJson(json);

  Map<String, dynamic> toJson() => $UserBettingSearchEntityToJson(this);
  List<UserBettingEntity>? waitList;
  List<UserBettingEntity>? winList;
  List<UserBettingEntity>? lossList;
}

@JsonSerializable()
class UserBettingEntity {
  UserBettingEntity(
      {this.id,
      this.name,
      this.playWay,
      this.bettingType,
      this.isGroup,
      this.ratioId,
      this.groupId,
      this.useScoreType,
      this.score,
      this.orderNo,
      this.status,
      this.winScore,
      this.createTime,
      this.updateTime});

  factory UserBettingEntity.fromJson(Map<String, dynamic> json) =>
      $UserBettingEntityFromJson(json);

  Map<String, dynamic> toJson() => $UserBettingEntityToJson(this);

  String? id;
  String? name;
  String? playWay;
  String? bettingType;
  String? isGroup;
  String? ratioId;
  String? groupId;
  String? useScoreType;
  double? score;
  String? orderNo;
  String? status;
  double? winScore;
  String? createTime;
  String? updateTime;
  String? createOrderTime;
}

@JsonSerializable()
class UserBettingPageEntity {
  UserBettingPageEntity();

  factory UserBettingPageEntity.fromJson(Map<String, dynamic> json) =>
      $UserBettingPageEntityFromJson(json);

  Map<String, dynamic> toJson() => $UserBettingPageEntityToJson(this);

  int? total;
  int? size;
  int? current;
  int? pages;
  List<UserBettingEntity>? records;
}
